#ifndef ALFS_GUI_COMMAND_STUFF_H
#define ALFS_GUI_COMMAND_STUFF_H

// File [alfs/gui/command_stuff.h].
//
// UserCommand
// InvocableUserCommand
// InvocableUserCommandTree
//
// In addition to bringin in the above classes, provides shorter convenience names
// in namespace alfs::commandStuffShortNames.
//
// (c) copyright Alf P. Steinbach 2008.
// Use, modification and distribution are subject to the "New BSD License"
// as listed at <url: http://www.opensource.org/licenses/bsd-license.php>.

#include    "InvocableUserCommandTree.h"        // Above classes in namespace alfs.
#include    <boost/bind.hpp>                    // Convenience for client code.

namespace alfs{
    namespace commandStuffShortNames
    {
        typedef InvocableUserCommandTree::Ptr   CmdTree; 
        typedef InvocableUserCommand::Ptr       Cmd;
        typedef Cmd::Pointee::Id                CmdId;
        void (*const noAction)() = &Cmd::Pointee::noAction;
        UserCommand::Id const                   idFileExit  = UserCommand::idFileExit;
        UserCommand::Id const                   idHelpAbout = UserCommand::idHelpAbout;
    }  // commandStuffShortNames
}  // alfs

#endif
